perm filename BOOK.PUB[LET,JMC] blob
sn#260602 filedate 1977-02-01 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 .require "memo.pub[let,jmc]" source_file
C00005 ENDMK
C⊗;
.require "memo.pub[let,jmc]" source_file;
.
.MACRO STANDARD FRONT(SECPRINT, SSPRINT, PAGEPRINT, INDEXCHAR) ⊂
.IF "SECPRINT" ≠ NULL THEN START
. COUNT SECTION PRINTING "SECPRINT"
. MACRO s(NAME) ⊂ sname ← SSNAME ← NULL ;
. NEXT PAGE; NEXT SECTION;
. BEGIN turn on "{";
. CENTER select 3;
Chapter {!}
. SKIP
NAME
. SKIP;
. sname ← "CHAPTER " & SECTION!
. SEND CONTENTS ⊂ SKIP 1;
{SECTION!}∂8NAME
. ⊃
. END ⊃
. END ;
.IF "SSPRINT" ≠ NULL THEN START
. COUNT SUBSECTION IN SECTION PRINTING "SSPRINT"
. MACRO SS(NAME) ⊂ SSNAME←"NAME";
. IF LINES<8 THEN NEXT PAGE; NEXT SUBSECTION;
. START
. FILL SKIP 2 TURN ON "{∂∞→\"
. SEND CONTENTS ⊂
∂(13){SUBSECTION!}∂(18)NAME\∞ ∞ ∞.∞ ∂(75)→{PAGE}
. ⊃
. END
{!}.__%3NAME%1
. SKIP;
. TURN OFF ; ⊃
. END;
.IF "PAGEPRINT" ≠ NULL THEN COUNT PAGE IN SECTION PRINTING "PAGEPRINT"
.IF "INDEXCHAR" = NULL THEN indexing←false else START
. indexing←true;
. AT INDEXING PHRASE INDEXING ⊂
. "PHRASE" ; TURN ON "{"
. SEND INDEX ⊂}<<{PAGE}_PHRASE_{⊃
. TURN OFF ⊃
. END;
. ⊃
.
.MACRO BACK ⊂
.sname ← SSNAME ← NULL
.IF INDEXING THEN START
. PORTION INDEX
. WASWORD ← WASLETT ← WASPG ← NULL ;
. AT "<<" PGNO "#" PHRASE "#" ⊂ LETT ← "PHRASE"[1] ;
. IF LETT ≠ WASLETT THEN IF LINES<6 THEN NEXT PAGE ELSE SKIP 2 ;
. IF "PHRASE" ≠ WASWORD THEN START BREAK }PHRASE__PGNO{ END
. ELSE IF "PGNO" ≠ WASPG THEN },_PGNO{ ;
. WASPG ← "PGNO" ; WASLETT ← LETT ; WASWORD ← "PHRASE" ; ⊃
. NOFILL turn on "←→∂\∞"; INDENT 0,0 PREFACE 0
←INDEX
. SKIP 4
. sname ← "INDEX"
. RECEIVE "##"
. sname ← NULL
. END
.COUNT PAGE PRINTING "i"
.PORTION CONTENTS
.FILL NOJUST; preface 0; CRBREAK turn on "←→∂\∞";
.INDENT 0,25,10 PREFACE 1 TABS 30,33,36,39,42,45,48,51,54,57,60,63
.once center select 3;
Table of Contents
.SKIP 2
→Page
.SKIP;
.sname ← "Table of Contents"
.RECEIVE
. ⊃
.
.standard front(I,1);